<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>promise封装Ajax操作</title>
</head>
<body>

    <script>
        /* 封装一个函数 sendAJAX 发送GET AJAX请求
           参数 URL
           返回结果Promise对象
        */

        function sendAJAX(url){
            return new Promise((resolve,reject)=>{
                const xhr = new XMLHttpRequest();
                xhr.responseType = 'json';
                xhr.open('GET',url);
                xhr.send();
                xhr.onreadystatechange = function(){
                    if(xhr.readyState===4){
                        if(xhr.status>=200 && xhr.status<300){
                            resolve(xhr.response);
                        }else{
                            reject(xhr.status);
                        }
                    }
                }
            })
        }

        sendAJAX('https://api.apiopen.top/getJoke').then(value=>{
            console.log(value);
        },reason=>{console.log(reason)})
    </script>
    
</body>
</html>